package thread;

import java.util.concurrent.Semaphore;

/**
 * @User: vitobo
 * @Date: 2024-08-12
 * @Description: 信号量学习
 *
 * 代码中, 也是可以使用Semaphore来实现类似于锁的 效果的, 来保证线程安全的;
 *
 */
public class ThreadDemo31 {
    public static void main(String[] args) throws InterruptedException {
        Semaphore semaphore = new Semaphore(3);

        semaphore.acquire();
        System.out.println("执行一次P操作");
        semaphore.acquire();
        System.out.println("执行一次P操作");
        semaphore.acquire();
        System.out.println("执行一次P操作");
        semaphore.acquire();
        System.out.println("执行一次P操作");

        // V操作
        semaphore.release();
    }
}
